package com.csf.create.singleton;

/**
 * 单例模式
 * Date: 2018/9/6
 * Time: 12:27
 *
 * @author chenshf
 */
public class SingleTon {

    /**
     * 私有属性
     */
    private static SingleTon singleTon = null;

    /**
     * 私有的构造方法防止实例化
     */
    private SingleTon(){

    }

    /**
     * 防止多线程并发创建
     * @return
     */
    public synchronized static SingleTon create(){
        return singleTon = new SingleTon();
    }

    /**
     * 共有方法获取实例
     */
    public static SingleTon getInstance(){
        //懒加载模式
        if (singleTon == null) {
            create();
        }
        return singleTon;
    }
}
